package cc.rengu.igas.bsps.common.dao;

import cc.rengu.igas.bsps.common.entity.TermInfo;
import cc.rengu.oltp.utility.bean.PageInfo;
import cc.rengu.oltp.utility.bean.PageResult;

import java.util.List;

/**
 * Created by zhangxuran on 2020/04/16
 */
public interface BspsTermInfoMapper {
    /**
     * 根据商户号查询终端列表信息
     *
     * @param instId  机构号
     * @param mchntNo 商户号
     * @return 用户信息
     * @throws Exception 异常
     */
    List<TermInfo> selectBspsTermInfoListByMchntNo(String instId, String mchntNo) throws Exception;

    /**
     * 根据商户号终端号查询终端列表信息(分页)
     *
     * @param instId   机构号
     * @param mchntNo  商户号
     * @param termNo   终端号
     * @param pageInfo 分页实例
     * @return 终端列表
     * @throws Exception 异常
     */
    PageResult selectBspsTermInfoListByMchntNoAndTermNo(String instId, String mchntNo, String termNo, PageInfo pageInfo) throws Exception;

    /**
     * 根据主键查询终端信息
     *
     * @param instId  机构号
     * @param mchntNo 商户号
     * @param termNo  终端号
     * @return 唯一终端信息
     * @throws Exception 异常
     */
    TermInfo selectBspsTermInfoByPrimaryKey(String instId, String mchntNo, String termNo) throws Exception;

    /**
     * 根据主键更新终端联系人和联系电话
     *
     * @param instId       机构号
     * @param mchntNo      商户号
     * @param termNo       终端号
     * @param contactName  终端联系人
     * @param contactPhone 终端联系电话
     * @return 0-成功，其它-失败
     * @throws Exception 异常
     */
    int updateTermContactNameContactPhoneByPrimaryKey(String instId, String mchntNo, String termNo, String contactName, String contactPhone) throws Exception;
}
